//go:build windows

package onet

import (
	"fmt"
	"github.com/panjf2000/gnet"
)

func UnsupportedOption(name string) func(...any) gnet.Option {
	return func(...any) gnet.Option {
		fmt.Printf("onet: unsupported options on windows: %s\n", name)
		return func(opts *gnet.Options) {}
	}
}

//goland:noinspection GoUnusedGlobalVariable
var (
	WithMulticore        = gnet.WithMulticore
	WithNumEventLoop     = gnet.WithNumEventLoop
	WithLoadBalancing    = gnet.WithLoadBalancing
	WithReuseAddr        = UnsupportedOption("ReuseAddr")
	WithReusePort        = UnsupportedOption("ReusePort")
	WithReadBufferCap    = gnet.WithReadBufferCap
	WithWriteBufferCap   = UnsupportedOption("WriteBufferCap")
	WithLockOSThread     = gnet.WithLockOSThread
	WithTCPKeepAlive     = gnet.WithTCPKeepAlive
	WithTCPNoDelay       = gnet.WithTCPNoDelay
	WithSocketRecvBuffer = gnet.WithSocketRecvBuffer
	WithSocketSendBuffer = gnet.WithSocketSendBuffer
	WithLogPath          = gnet.WithLogPath
	WithLogLevel         = gnet.WithLogLevel
	WithLogger           = gnet.WithLogger
)
